Better with Kent · draft

Ship PR

Stop babysitting your agent's pull requests

why first
show examples
then the skill

Why this matters

You are the babysitter

agent opens PR you refresh CI you read bots you push again

The agent implemented. Your attention is stuck on the verification loop — not the judgment call.

Why this matters

The handoff should be the output

I want a summary when CI is clean — root cause, status, links — not another tab to babysit.

If you keep typing the same follow-up on a PR, that follow-up belongs in the loop. See also: loop-engineering ep

Show, don't tell

Examples first

Discord ping PR + preview bot reviews judgment

Live tabs carry the proof. Slides are the map.

Example · handoff

The Discord ping is the product

  • kody#709 — production RPC stub bug
  • Root cause, fix, CI status, preview link
  • CI green — agent still said not auto-merged

Tab: ship-pr Discord channel · Agent bc-45152ca0 + PR #709

Example · deploy

Preview while you were away

Green checks. Preview URL posted. You did not watch the loop run.

Tab: kody#709 checks + github-actions preview comment · live preview

Example · bot loop

Bugbot and CodeRabbit had their say

  • kody#628 — 17 inline bot reviews, 18 commits
  • Address capability alias review findings
  • Loop ran — Kent not in the thread

Tab: PR #628 · conversation + commits

Example · scale

Big diff, still shipped

kody#669 — ~8.6k lines changed, 82 files, preview deployed.

Tab: PR #669 · Files changed + preview comment

Example · judgment

Green does not always mean merge

Low risk

Agent can squash-merge and watch deploy.

Medium risk

Stop at Discord ping. You decide.

kody#709 — sandbox runtime contract change · worth a human glance

Now the skill

Package the loop

Those examples are not magic prompts — they come from ship-pr.

Skill: kcd-skills/ship-pr

The ship-pr loop

1Mark ready — Kody pr/set-review-status
2Wait for CI — gh pr checks
3Fix failures in PR scope
4Triage AI review — fix valid, ignore nits
5Rebase if needed · push · repeat
6Stop when green and clean → Discord ping

Walk the skill file

Invoke · /ship-pr or "ship this PR"

## Loop
1. Mark ready — kody:...@kentcdodds/github/pr/set-review-status
2. Wait for CI — gh pr checks
3. Fix failures; address valid AI-reviewer feedback
4. Green and no valid feedback left → break
5. Push → repeat

## Done → Discord
postMessage({ channelId, content })

Tab: SKILL.md on GitHub · merge mode optional

Composes with

loop-on-ci + fix-ci + babysit + get-pr-comments

One skill orchestrates skills you already have.

Triage, don't obey

Fix

Real bugs, CI failures, merge conflicts in your diff.

Ignore

Nits, wrong feedback, already-resolved threads.

Judgment is part of the skill — not blind bot compliance.

Optional

Merge mode

squash merge watch deploy Discord + links

Say "merge and verify" · Kody as kody-bot · low risk only

Crystallized habit

92 Cursor Cloud conversations matched this loop before the skill file existed.

Ship-pr packages what I was already pasting into prompts.

Homework

Install it on the next PR

  • Copy ship-pr from kcd-skills into your agent skills path.
  • Wire GitHub + your handoff channel.
  • End the next agent task with ship this PR.

Better with Kent

This was Better With Kent

Good agents make code cheaper to generate. Ship PR makes verification cheaper to finish.

Like · comment · subscribe · get better with me